package quesGenerate;

import java.io.IOException;
import java.util.Scanner;

public class mainClass {
    public static void main(String args[]) throws IOException {
        // 初始化一下
        System.out.println("请输入文件名 不包含后缀，文件将在files目录下生成");
        // 输入 文件名
        String filename = new String();
        Scanner scanner = new Scanner(System.in);
        filename = scanner.next();
        // 文件读写类
        filesHelper fw = new filesHelper(filename);
        // 题目生成类
        quesStringGenerate qsg = new quesStringGenerate();
        ///////////////////////////////////////////////////////////
        // 主函数开始，现在的是尝试一手
        // 设置参数部分 快捷样例 01 1 1 1 1 1 999 10 1000
        // 设置符号
        System.out.println("计算符号设置1/0 加减乘除 空格隔开（参考输入1 1 0 0 为加减法运算）");
        int status = 16;

        // 防止空状态进入类
        for(int i = 0 ;i < 4 ;++i) {
            int c = scanner.nextInt();
            System.out.println(c);
            if(c == 1)  status += (1<<i);
        }

        // 非空设置更改符号
        if(status != 16)    qsg.setChars(status);
        qsg.setChars(status);

        // 设置是否包含负数
        int key = 0;
        System.out.println("设置是否包含负数0/1");
        key = scanner.nextInt();
        if(key==1)  qsg.setNeg(true);

        // 设置计算范围
        System.out.println("设置计算范围0-9999 如允许出现负数，则范围为-x~x");
        do{
            key = scanner.nextInt();
        } while(!qsg.setRange(key));

        // 设置文件一行几道题
        System.out.println("生成文件一行打印题目数量 推荐一行十道题以内");
        key = scanner.nextInt();
        fw.setCurr(key);

        // 设置几道题
        System.out.println("打印总题目数");
        key = scanner.nextInt();

        String q = new String();
        for(int i = 0 ;i < key ;++i) {
            // 写入题目
            q = qsg.generateQues();
            fw.fileWrite(q);
            System.out.println(q);
        }

        ///////////////////////////////////////////////////////////
        // 函数结尾关闭一下文件
        fw.fileClose();
    }
}
